With the recent prevalence of data communication networks, even at home, so-called home network systems, in which home electric devices, computers, and other peripheral devices are connected to a network so that these devices can communicate with one another, have become increasingly popular. Home network systems allow network-connected devices to communicate with one another to share the data processing functions of the devices and to transmit and receive content between the devices, thus providing usability and convenience for the users. In the future, home network systems will become increasingly widespread.
One known protocol suitable for such home network configuration is Universal Plug and Play (UPnP). Universal Plug and Play (UPnP) allows for easy establishment of networks without the accompanying complex operation, and allows network-connected devices to receive services provided by connected devices without the accompanying difficult operation or setting-up. UPnP also has the advantage of the easy addition of devices without relying on an OS (operating system) on the devices.
In UPnP, XML (eXtensible Markup Language) definition files are exchanged between the connected devices for mutual authentication between the devices. The UPnP processing schematically includes:
(1) addressing, in which a device ID, e.g., IP address, is obtained:
(2) discovery, in which devices on the network are searched for, responses are received from the devices, and information included in the responses, e.g., the device types, the functions, etc., is acquired: and
(3) service request, in which a service request is submitted to each of the devices based on the information acquired in the discovery processing.
The processing procedure described above allows for provision and reception of services using the network-connected devices. A new device to be connected to the network can obtain its device ID in the addressing processing, and can acquire information about the other network-connected devices in the discovery processing. Then, the new device can submit a service request to the other devices based on the acquired information.
For example, when content stored in a server, such as music data and image data, is to be played back on a client device, an acquisition request for various content attribute information stored in the server, including content information, e.g., the song title, the movie title, the artist name, etc., data-compression-scheme information (ATRAC (adaptive transform acoustic coding), MPEG (moving picture experts group), etc.), and, if necessary, copyright information, is sent from the client to the server. The attribute information is called metadata or meta-information.
In response to the request from the client, the server transmits metadata (attribute information) about the content held by the server to the client. The client displays the content information on a display of the client device based on the metadata obtained from the server according to a predetermined display program. For example, a song list including artist names and titles is displayed on the display. The user checks or selects content to be played back based on the displayed information, and sends a transmission request of the content to the server. The server receives the content request from the client, and the content is transmitted from the server to the client in response to the received request. In the client, the received content is played back.
As such, content stored in a server in a home network can be accessed from other network-connected devices. For example, a device performing the UPnP connection described above, which is a simple device connection protocol, can acquire content. When the content is movie data or music data, the user can view the movie or listen to the music by connecting a TV, a player, or the like as a network-connected device.
Various types of content, such as music and image data, are generally transmitted and received as data encoded in various schemes between devices, and are stored in a storage unit of each of the devices. For example, audio data schemes include ATRAC3 (adaptive transform acoustic coding3) and ATRAC3plus, and video data schemes include MPEG1 (moving picture experts group1), MPEG2, and MPEG4.
For example, in the home network configuration, a server providing content to clients stores content received via a tuner or original content input from a storage medium, such as a CD or a DVD, in its storage device, if necessary, and performs a content providing process via the network in response to a request from a client. In the content providing process, it is necessary to provide encoded data that is supported by the data processing, or the data decoding function, of the client device. Therefore, the server performs data conversion on the original content using a codec, or a data conversion unit, of the server, and provides the converted data to the clients.
When a client specifies a data scheme supported by the client device or the desired data scheme and submits a data request to the server, the server transmits the encoded video or audio data having the data scheme in accordance with the request from the client to the client. The client performs the codec function of the client device, or data conversion, on the received data to play back the content.
A data conversion processing mechanism of the related art for transmission and reception of encoded data between a server and a client is disclosed in, for example, Patent Document 1 (Japanese Unexamined Patent Application Publication No. 2002-77855). Patent Document 1 shows a data access server configuration allowing automatic selection of efficient transcoding, i.e., data conversion, according to content encoding format information held by a content server and client-decodable data format information to perform data conversion.
In view of data quality, however, desirably, the client receives the original data held by the server and plays back the original data. In the message interchange protocol, complying with the current UPnP specification, in a content request between the server and the client, although it is possible to submit a data scheme specification request from the client, the client is not notified of the original data scheme held by the server, and therefore, is not allowed to know of the data scheme of the original content.
Thus, the client is not allowed to determine whether the data received from the server is original data or data converted, e.g., re-encoded, by the server, and is not allowed to perform a process for selectively receiving the highest quality data receivable by the client and playing back the data.